package com.wans.ssq.service;

import com.wans.common.result.ResponseResult;
import com.wans.model.common.PaginationParam;
import com.wans.model.lottery.ssq.dos.SSQ;
import com.wans.model.lottery.ssq.dtos.SSQHistoryDTO;

import java.util.List;

public interface SSQService {

    /**
     *  获取数据库中最新的期次
     * @return 最新的期次
     */
    ResponseResult<SSQ> getNewHistoryCode();

    /**
     * 插入一条数据
     * @param ssq 一条数据
     * @return 响应体
     */
    ResponseResult<Integer> saveNewHistoryCode(SSQ ssq);


    /**
     * 获取历史记录列表
     * @param ssqHistoryDTO 分页参数等
     * @return 分页后的数据
     */
    ResponseResult<List<SSQ>> listHistory(SSQHistoryDTO ssqHistoryDTO);


    /**
     * 缓存数据使用逻辑 - 初始化缓存
     * @param paginationCache 分页缓存
     */
    void cacheHistory(PaginationParam paginationCache);

    /**
     * 初始化前的清除缓存
     */
    void clearCache();
}
